

package modelo;

import proyecto2011.Archivo;

/**
 * Clase que representa un Parametro en una Funcion
 * @author  Jaime Painefilu - Juan Demo
 */
public class Parametro {
    String clase;
    String nombre;
    String tipo;

    public Parametro() {        
        this.clase = "IN";
        this.nombre = "";
        this.tipo = "";
    }

    public String getClase() {
        return clase;
    }

    public void setClase(String clase) {
        this.clase = clase;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getTipo() {
        return tipo;
    }

    public void setTipo(String tipo) {
        this.tipo = tipo;
    }

    public void showParametro(Archivo arch){
        arch.escribirLinea(clase+" "+nombre+" "+tipo);
    }
    
    public void compararParametro(Parametro par, Archivo arch){
       if(!(this.clase.equals(par.clase))|| !(this.tipo.equals(par.tipo))){
            arch.escribirLinea("        << ADVERTENCIA! >> Parametros '"+this.nombre+"' difieren en: ");
            if(!(this.clase.equals(par.clase))) arch.escribirLinea("        - Clase\n");
            if(!(this.tipo.equals(par.tipo))) arch.escribirLinea("      - Tipo\n");
            this.showParametro(arch);
            par.showParametro(arch);
        }
        else arch.escribirLinea("     ** Los Parametros: '"+this.nombre+"'  son iguales.\n");
    }
    
}
